{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "58b91c48",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "请输入一个正整数:6\n",
      "输入的数的阶乘为：720\n"
     ]
    }
   ],
   "source": [
    "i = int(input(\"请输入一个正整数:\"))\n",
    "def func(i):                        #定义参数\n",
    "    if i==1:\n",
    "        return 1\n",
    "    else:\n",
    "        return func(i-1)*i\n",
    "result = func(i)\n",
    "print(f\"输入的数的阶乘为：{result}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "aed32462",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "请输入下限：0\n",
      "请输入上限：10\n",
      "2\n",
      "3\n",
      "5\n",
      "7\n"
     ]
    }
   ],
   "source": [
    "#求指定区间的质数\n",
    "lower=int(input(\"请输入下限：\"))\n",
    "upper=int(input(\"请输入上限：\"))\n",
    "for num in range(lower,upper+1):\n",
    "    if num>1:\n",
    "        for i in range(2,num):\n",
    "            if num%i==0:#判断子啊2-num范围内是否存在i能够整除num，如果存在就代表除了1和本身外它还能被其他数整除，所以不是质数。\n",
    "                break\n",
    "        else:\n",
    "            print(num)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "bb4b7888",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1. 3.]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    " \n",
    "# 创建矩阵和数组\n",
    "A = np.array([[3,2],\n",
    "              [1,2]])\n",
    "b = np.array([9,7])\n",
    " \n",
    "x = np.linalg.solve(A,b)\n",
    "print(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "bd427875",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "ename": "AttributeError",
     "evalue": "'DataFrameGroupBy' object has no attribute 'nlargest'",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mAttributeError\u001b[0m                            Traceback (most recent call last)",
      "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_22540\\2341886904.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m      6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      7\u001b[0m \u001b[1;31m# nlargest()的优点就是能一次看到最大的几行，而且不需要排序。\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 8\u001b[1;33m \u001b[0mdf\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnlargest\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m10\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;34m'交易额'\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mkeep\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34m'first'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m      9\u001b[0m \u001b[0mdf\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     10\u001b[0m \u001b[0mdf\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdf\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;34m'交易额'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32md:\\python\\lib\\site-packages\\pandas\\core\\groupby\\groupby.py\u001b[0m in \u001b[0;36m__getattr__\u001b[1;34m(self, attr)\u001b[0m\n\u001b[0;32m    910\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    911\u001b[0m         raise AttributeError(\n\u001b[1;32m--> 912\u001b[1;33m             \u001b[1;34mf\"'{type(self).__name__}' object has no attribute '{attr}'\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    913\u001b[0m         )\n\u001b[0;32m    914\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;31mAttributeError\u001b[0m: 'DataFrameGroupBy' object has no attribute 'nlargest'"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "\n",
    "df = pd.read_excel('超市营业额2.xlsx')\n",
    "# nlargest()的优点就是能一次看到最大的几行，而且不需要排序。\n",
    "df = df.nlargest(10,'交易额',keep = 'first')\n",
    "df\n",
    "df = df[['交易额']]\n",
    "df\n",
    "df = df.sum()\n",
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "ff389bcd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 显示中文\n",
    "plt.rcParams['font.sans-serif'] = 'SimHei'\n",
    "# 支持符号\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "\n",
    "x = np.linspace(-np.pi, np.pi, 256, endpoint=True)\n",
    "C, S = np.cos(x), np.sin(x)\n",
    "\n",
    "plt.plot(x, S, color=\"blue\", linewidth=2, linestyle=\"--\", label=\"正弦函数\")\n",
    "plt.plot(x, C, color=\"red\", linewidth=3, linestyle=\":\", label=\"余弦函数\")\n",
    "\n",
    "plt.legend(loc='upper right')  # 添加图例，位置在右上角\n",
    "\n",
    "plt.xlabel(\"x\")\n",
    "plt.ylabel(\"y\")\n",
    "plt.title(\"函数\")\n",
    "\n",
    "plt.grid(True)\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "cd1fdb5c",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
